Corbett : Evaluating Deadlock Detection Methods for Concurrent
نویسنده
چکیده
| Static analysis of concurrent programs has been hindered by the well known state explosion problem. Although many diierent techniques have been proposed to combat this state explosion, there is little empirical data comparing the performance of the methods. This information is essential for assessing the practical value of a technique and for choosing the best method for a particular problem. In this paper, we carry out an evaluation of three techniques for combating the state explosion problem in deadlock detection: reachability search with a partial order state space reduction, symbolic model checking, and inequality necessary conditions. We justify the method used for the comparison, and carefully analyze several sources of potential bias. The results of our evaluation provide valuable data on the kinds of programs to which each technique might best be applied. Furthermore, we believe that the methodological issues we discuss are of general signiicance in comparison of analysis techniques.
منابع مشابه
Deadlock Detection with Stubborn Unfoldings
Stubborn sets and model unfolding are two well-known methods for sidestepping the complexity of state-space exploration based on formal models of concurrent programs, such as Labeled Transition Systems and Petri nets. Here we define a deadlock detection strategy that combines these two methods. We also show that the resulting method, stubborn unfoldings, can produce smaller state space represen...
متن کاملA Novel Concurrent Generalized Deadlock Detection Algorithm in Distributed Systems
Detecting deadlocks has been considered an important problem in distributed systems. Many approaches are proposed to handle this issue; however, little attention has been paid on coordinating concurrent execution of distributed deadlock detection algorithms. Previous approaches may report incorrect results (false negatives), and they are inefficient due to lack of proper coordination of concurr...
متن کاملSurvey of Deadlock Detection in Distributed Concurrent Programming Environments and Its Application to Real-time Systems and Ada Invited Paper
Deadlock is one of the most serious problems in multitasking concurrent programming systems. The deadlock problem becomes further complicated when the underlying system is distributed and when tasks have timing constraints. Distributed deadlock detection has been studied to some extent in distributed database systems and distributed timesharing operating systems but has not been widely used in ...
متن کاملTowards a Deadlock Analysis for Erlang Programs
We argue that there is a need for automated veri cation of absence of deadlocks in concurrent programs. We brie y describe how absence of deadlocks can be showed, in general, for a program, how the necessary information can be gathered, and the use of formal methods. We discuss timeouts as a method of run-time deadlock detection, and why they remain necessary in some situations, and we suggest ...
متن کاملExperimental Design for Comparing Static Concurrency Analysis Techniques
formally, experimentation can help develop estimates of Software engineering has suffered from a shortage of empirical studies. We recently undertook a study in an area that seems well suited to empirical investigation, comparing the performance of several static analysis tools for evaluating properties of concurrent software. During the course of that study, we encountered a number of signific...
متن کامل